(set-info :source |fuzzsmt|)
(set-info :smt-lib-version 2.0)
(set-info :category "random")
(set-info :status unknown)
(set-logic QF_UFBV)
(declare-fun f0 ( (_ BitVec 12)) (_ BitVec 9))
(declare-fun f1 ( (_ BitVec 10) (_ BitVec 7)) (_ BitVec 4))
(declare-fun p0 ( (_ BitVec 2) (_ BitVec 14)) Bool)
(declare-fun p1 ( (_ BitVec 2) (_ BitVec 8)) Bool)
(declare-fun v0 () (_ BitVec 4))
(declare-fun v1 () (_ BitVec 12))
(assert (let ((e2(_ bv62492 16)))
(let ((e3(_ bv13 4)))
(let ((e4 (! (f1 ((_ extract 9 0) v1) ((_ zero_extend 3) e3)) :named term4)))
(let ((e5 (! (ite (p0 ((_ extract 3 2) e4) ((_ sign_extend 2) v1)) (_ bv1 1) (_ bv0 1)) :named term5)))
(let ((e6 (! (bvxor ((_ zero_extend 15) e5) e2) :named term6)))
(let ((e7 (! (ite (p1 ((_ extract 1 0) e3) ((_ sign_extend 4) e3)) (_ bv1 1) (_ bv0 1)) :named term7)))
(let ((e8 (! (bvnor ((_ zero_extend 15) e5) e2) :named term8)))
(let ((e9 (! (bvor e4 e4) :named term9)))
(let ((e10 (! (bvmul ((_ sign_extend 12) e3) e8) :named term10)))
(let ((e11 (! (f0 ((_ extract 14 3) e8)) :named term11)))
(let ((e12 (! (bvnor ((_ zero_extend 15) e7) e8) :named term12)))
(let ((e13 (! (bvsdiv e12 e2) :named term13)))
(let ((e14 (! (bvcomp ((_ zero_extend 12) e4) e8) :named term14)))
(let ((e15 (! (bvmul ((_ sign_extend 12) e3) e10) :named term15)))
(let ((e16 (! (ite (distinct e11 ((_ sign_extend 5) v0)) (_ bv1 1) (_ bv0 1)) :named term16)))
(let ((e17 (! (= e14 e16) :named term17)))
(let ((e18 (! (= e15 e2) :named term18)))
(let ((e19 (! (bvuge e3 e4) :named term19)))
(let ((e20 (! (p0 ((_ extract 1 0) e13) ((_ extract 14 1) e8)) :named term20)))
(let ((e21 (! (p1 ((_ extract 1 0) e11) ((_ extract 10 3) e10)) :named term21)))
(let ((e22 (! (distinct e15 e15) :named term22)))
(let ((e23 (! (p1 ((_ extract 1 0) e9) ((_ extract 8 1) e12)) :named term23)))
(let ((e24 (! (= ((_ zero_extend 8) e16) e11) :named term24)))
(let ((e25 (! (p1 ((_ extract 1 0) e3) ((_ sign_extend 4) e4)) :named term25)))
(let ((e26 (! (bvslt ((_ sign_extend 12) e3) e10) :named term26)))
(let ((e27 (! (bvslt e2 ((_ zero_extend 15) e5)) :named term27)))
(let ((e28 (! (bvsgt e7 e14) :named term28)))
(let ((e29 (! (bvule e12 ((_ sign_extend 15) e16)) :named term29)))
(let ((e30 (! (distinct e8 e2) :named term30)))
(let ((e31 (! (p1 ((_ extract 4 3) e12) ((_ zero_extend 7) e5)) :named term31)))
(let ((e32 (! (bvsgt e9 ((_ zero_extend 3) e5)) :named term32)))
(let ((e33 (! (bvuge e12 ((_ sign_extend 12) v0)) :named term33)))
(let ((e34 (! (bvuge e8 e12) :named term34)))
(let ((e35 (! (distinct ((_ sign_extend 4) v1) e13) :named term35)))
(let ((e36 (! (bvsgt e13 ((_ zero_extend 15) e14)) :named term36)))
(let ((e37 (! (= e16 e5) :named term37)))
(let ((e38 (! (distinct v0 ((_ zero_extend 3) e5)) :named term38)))
(let ((e39 (! (bvult ((_ zero_extend 5) e9) e11) :named term39)))
(let ((e40 (! (p0 ((_ zero_extend 1) e14) ((_ zero_extend 13) e7)) :named term40)))
(let ((e41 (! (p1 ((_ zero_extend 1) e7) ((_ zero_extend 7) e5)) :named term41)))
(let ((e42 (! (bvslt e15 ((_ zero_extend 12) v0)) :named term42)))
(let ((e43 (! (p0 ((_ extract 2 1) e10) ((_ sign_extend 13) e5)) :named term43)))
(let ((e44 (! (bvsge ((_ zero_extend 15) e14) e15) :named term44)))
(let ((e45 (! (bvuge e14 e5) :named term45)))
(let ((e46 (! (bvult e10 e2) :named term46)))
(let ((e47 (! (bvugt e15 ((_ zero_extend 4) v1)) :named term47)))
(let ((e48 (! (bvslt e13 ((_ sign_extend 15) e7)) :named term48)))
(let ((e49 (! (bvule e6 e10) :named term49)))
(let ((e50 (! (and e30 e30) :named term50)))
(let ((e51 (! (or e49 e39) :named term51)))
(let ((e52 (! (= e35 e38) :named term52)))
(let ((e53 (! (ite e40 e26 e22) :named term53)))
(let ((e54 (! (ite e19 e21 e46) :named term54)))
(let ((e55 (! (xor e34 e47) :named term55)))
(let ((e56 (! (= e55 e33) :named term56)))
(let ((e57 (! (and e50 e45) :named term57)))
(let ((e58 (! (not e57) :named term58)))
(let ((e59 (! (xor e18 e27) :named term59)))
(let ((e60 (! (= e36 e59) :named term60)))
(let ((e61 (! (not e20) :named term61)))
(let ((e62 (! (not e52) :named term62)))
(let ((e63 (! (and e60 e17) :named term63)))
(let ((e64 (! (=> e24 e48) :named term64)))
(let ((e65 (! (xor e53 e28) :named term65)))
(let ((e66 (! (xor e29 e58) :named term66)))
(let ((e67 (! (not e25) :named term67)))
(let ((e68 (! (or e62 e43) :named term68)))
(let ((e69 (! (=> e67 e31) :named term69)))
(let ((e70 (! (= e51 e66) :named term70)))
(let ((e71 (! (= e23 e68) :named term71)))
(let ((e72 (! (= e69 e42) :named term72)))
(let ((e73 (! (or e61 e64) :named term73)))
(let ((e74 (! (not e70) :named term74)))
(let ((e75 (! (ite e37 e32 e37) :named term75)))
(let ((e76 (! (=> e41 e54) :named term76)))
(let ((e77 (! (and e76 e56) :named term77)))
(let ((e78 (! (not e77) :named term78)))
(let ((e79 (! (= e63 e63) :named term79)))
(let ((e80 (! (ite e44 e71 e79) :named term80)))
(let ((e81 (! (or e80 e73) :named term81)))
(let ((e82 (! (= e72 e74) :named term82)))
(let ((e83 (! (=> e65 e81) :named term83)))
(let ((e84 (! (=> e83 e82) :named term84)))
(let ((e85 (! (not e78) :named term85)))
(let ((e86 (! (and e75 e75) :named term86)))
(let ((e87 (! (=> e86 e85) :named term87)))
(let ((e88 (! (not e87) :named term88)))
(let ((e89 (! (=> e84 e84) :named term89)))
(let ((e90 (! (not e88) :named term90)))
(let ((e91 (! (or e89 e89) :named term91)))
(let ((e92 (! (= e91 e90) :named term92)))
(let ((e93 (! (and e92 (not (= e2 (_ bv0 16)))) :named term93)))
(let ((e94 (! (and e93 (not (= e2 (bvnot (_ bv0 16))))) :named term94)))
e94
))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))

(check-sat)
(set-option :regular-output-channel "/dev/null")
(get-model)
(get-value (term4))
(get-value (term5))
(get-value (term6))
(get-value (term7))
(get-value (term8))
(get-value (term9))
(get-value (term10))
(get-value (term11))
(get-value (term12))
(get-value (term13))
(get-value (term14))
(get-value (term15))
(get-value (term16))
(get-value (term17))
(get-value (term18))
(get-value (term19))
(get-value (term20))
(get-value (term21))
(get-value (term22))
(get-value (term23))
(get-value (term24))
(get-value (term25))
(get-value (term26))
(get-value (term27))
(get-value (term28))
(get-value (term29))
(get-value (term30))
(get-value (term31))
(get-value (term32))
(get-value (term33))
(get-value (term34))
(get-value (term35))
(get-value (term36))
(get-value (term37))
(get-value (term38))
(get-value (term39))
(get-value (term40))
(get-value (term41))
(get-value (term42))
(get-value (term43))
(get-value (term44))
(get-value (term45))
(get-value (term46))
(get-value (term47))
(get-value (term48))
(get-value (term49))
(get-value (term50))
(get-value (term51))
(get-value (term52))
(get-value (term53))
(get-value (term54))
(get-value (term55))
(get-value (term56))
(get-value (term57))
(get-value (term58))
(get-value (term59))
(get-value (term60))
(get-value (term61))
(get-value (term62))
(get-value (term63))
(get-value (term64))
(get-value (term65))
(get-value (term66))
(get-value (term67))
(get-value (term68))
(get-value (term69))
(get-value (term70))
(get-value (term71))
(get-value (term72))
(get-value (term73))
(get-value (term74))
(get-value (term75))
(get-value (term76))
(get-value (term77))
(get-value (term78))
(get-value (term79))
(get-value (term80))
(get-value (term81))
(get-value (term82))
(get-value (term83))
(get-value (term84))
(get-value (term85))
(get-value (term86))
(get-value (term87))
(get-value (term88))
(get-value (term89))
(get-value (term90))
(get-value (term91))
(get-value (term92))
(get-value (term93))
(get-value (term94))
(get-info :all-statistics)
